﻿using Zhp.Auth.Model;

namespace Zhp.Auth.IService
{
    public interface IOnlineService
    {
        public List<OnlineUserModel> GetOnlineUserList();
        public List<OnlineUserModel> GetOnlineActiveUserList();

        public IsOnlineInfo IsOnline(string tokenId, string userId);

        public void AddOnlineUser(OnlineUserModel onlineUser);

        public void RefreshOnlineUser(OnlineUserModel onlineUser);

        public void RemoveOnlineUser(long tokenId);

        public void ForcedRemoveOfflineUser(long tokenId);

        public bool IsMultiClientLogin();

        public DateTime GetAccessExpiresDate(DateTime dateTime);

        public DateTime GetRefreshExpiresDate(DateTime dateTime);
    }
}
